{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 第1章 统计学习方法概论"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "1．统计学习是关于计算机基于数据构建概率统计模型并运用模型对数据进行分析与预测的一门学科。统计学习包括监督学习、非监督学习、半监督学习和强化学习。\n",
    "\n",
    "2．统计学习方法三要素——模型、策略、算法，对理解统计学习方法起到提纲挈领的作用。\n",
    "\n",
    "3．本书主要讨论监督学习，监督学习可以概括如下：从给定有限的训练数据出发， 假设数据是独立同分布的，而且假设模型属于某个假设空间，应用某一评价准则，从假设空间中选取一个最优的模型，使它对已给训练数据及未知测试数据在给定评价标准意义下有最准确的预测。\n",
    "\n",
    "4．统计学习中，进行模型选择或者说提高学习的泛化能力是一个重要问题。如果只考虑减少训练误差，就可能产生过拟合现象。模型选择的方法有正则化与交叉验证。学习方法泛化能力的分析是统计学习理论研究的重要课题。\n",
    "\n",
    "5．分类问题、标注问题和回归问题都是监督学习的重要问题。本书中介绍的统计学习方法包括感知机、$k$近邻法、朴素贝叶斯法、决策树、逻辑斯谛回归与最大熵模型、支持向量机、提升方法、EM算法、隐马尔可夫模型和条件随机场。这些方法是主要的分类、标注以及回归方法。它们又可以归类为生成方法与判别方法。\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 使用最小二乘法拟和曲线\n",
    "\n",
    "高斯于1823年在误差$e_1,…,e_n$独立同分布的假定下,证明了最小二乘方法的一个最优性质: 在所有无偏的线性估计类中,最小二乘方法是其中方差最小的！\n",
    "对于数据$(x_i, y_i)   (i=1, 2, 3...,m)$\n",
    "\n",
    "拟合出函数$h(x)$\n",
    "\n",
    "有误差，即残差：$r_i=h(x_i)-y_i$\n",
    "\n",
    "此时$L2$范数(残差平方和)最小时，$h(x)$ 和 $y$ 相似度最高，更拟合"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "一般的$H(x)$为$n$次的多项式，$H(x)=w_0+w_1x+w_2x^2+...w_nx^n$\n",
    "\n",
    "$w(w_0,w_1,w_2,...,w_n)$为参数\n",
    "\n",
    "最小二乘法就是要找到一组 $w(w_0,w_1,w_2,...,w_n)$ ，使得$\\sum_{i=1}^n(h(x_i)-y_i)^2$ (残差平方和) 最小\n",
    "\n",
    "即，求 $min\\sum_{i=1}^n(h(x_i)-y_i)^2$\n",
    "\n",
    "----"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "举例：我们用目标函数$y=sin2{\\pi}x$, 加上一个正态分布的噪音干扰，用多项式去拟合【例1.1 11页】"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import scipy as sp\n",
    "from scipy.optimize import leastsq\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* ps: numpy.poly1d([1,2,3])  生成  $1x^2+2x^1+3x^0$*"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 目标函数\n",
    "def real_func(x):\n",
    "    return np.sin(2*np.pi*x)\n",
    "\n",
    "# 多项式\n",
    "def fit_func(p, x):\n",
    "    f = np.poly1d(p)\n",
    "    return f(x)\n",
    "\n",
    "# 残差\n",
    "def residuals_func(p, x, y):\n",
    "    ret = fit_func(p, x) - y\n",
    "    return ret"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 十个点\n",
    "x = np.linspace(0, 1, 10)\n",
    "x_points = np.linspace(0, 1, 1000)\n",
    "# 加上正态分布噪音的目标函数的值\n",
    "y_ = real_func(x)\n",
    "y = [np.random.normal(0, 0.1) + y1 for y1 in y_]\n",
    "\n",
    "\n",
    "def fitting(M=0):\n",
    "    \"\"\"\n",
    "    M    为 多项式的次数\n",
    "    \"\"\"\n",
    "    # 随机初始化多项式参数\n",
    "    p_init = np.random.rand(M + 1)\n",
    "    # 最小二乘法\n",
    "    p_lsq = leastsq(residuals_func, p_init, args=(x, y))\n",
    "    print('Fitting Parameters:', p_lsq[0])\n",
    "\n",
    "    # 可视化\n",
    "    plt.plot(x_points, real_func(x_points), label='real')\n",
    "    plt.plot(x_points, fit_func(p_lsq[0], x_points), label='fitted curve')\n",
    "    plt.plot(x, y, 'bo', label='noise')\n",
    "    plt.legend()\n",
    "    return p_lsq"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### M=0"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fitting Parameters: [-0.09556916]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# M=0\n",
    "p_lsq_0 = fitting(M=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### M=1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fitting Parameters: [-1.32644488  0.56765328]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# M=1\n",
    "p_lsq_1 = fitting(M=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### M=3 "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fitting Parameters: [ 21.82819178 -32.45270828  10.80718117  -0.14400084]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# M=3\n",
    "p_lsq_3 = fitting(M=3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### M=9"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fitting Parameters: [ 5.40375869e+03 -2.29367237e+04  4.06754061e+04 -3.91969165e+04\n",
      "  2.22865015e+04 -7.52728222e+03  1.43525372e+03 -1.53038713e+02\n",
      "  1.30761400e+01 -1.18683361e-01]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# M=9\n",
    "p_lsq_9 = fitting(M=9)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "当M=9时，多项式曲线通过了每个数据点，但是造成了过拟合"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 正则化"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "结果显示过拟合， 引入正则化项(regularizer)，降低过拟合\n",
    "\n",
    "$Q(x)=\\sum_{i=1}^n(h(x_i)-y_i)^2+\\lambda||w||^2$。\n",
    "\n",
    "回归问题中，损失函数是平方损失，正则化可以是参数向量的L2范数,也可以是L1范数。\n",
    "\n",
    "- L1: regularization\\*abs(p)\n",
    "\n",
    "- L2: 0.5 \\* regularization \\* np.square(p)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "regularization = 0.0001\n",
    "\n",
    "\n",
    "def residuals_func_regularization(p, x, y):\n",
    "    ret = fit_func(p, x) - y\n",
    "    ret = np.append(ret,\n",
    "                    np.sqrt(0.5 * regularization * np.square(p)))  # L2范数作为正则化项\n",
    "    return ret"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[ -6.74394342  -3.10222016   2.02358032   7.2394577    9.84794549\n",
      "   5.98988539  -6.5352902  -17.44215081   8.75882173  -0.1243243 ]\n"
     ]
    }
   ],
   "source": [
    "# 最小二乘法,加正则化项\n",
    "p_init = np.random.rand(9 + 1)\n",
    "p_lsq_regularization = leastsq(\n",
    "    residuals_func_regularization, p_init, args=(x, y))\n",
    "print(p_lsq_regularization[0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x9123bc8>"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x_points, real_func(x_points), label='real')\n",
    "plt.plot(x_points, fit_func(p_lsq_9[0], x_points), label='fitted curve')\n",
    "plt.plot(\n",
    "    x_points,\n",
    "    fit_func(p_lsq_regularization[0], x_points),\n",
    "    label='regularization')\n",
    "plt.plot(x, y, 'bo', label='noise')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "----\n",
    "参考代码：https://github.com/wzyonggege/statistical-learning-method\n",
    "\n",
    "中文注释制作：机器学习初学者\n",
    "\n",
    "微信公众号：ID:ai-start-com\n",
    "\n",
    "配置环境：python 3.5+\n",
    "\n",
    "代码全部测试通过。\n",
    "![gongzhong](../gongzhong.jpg)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
